招生考试网
学历| 高考 美术高考 考研 自考 成考 专升本 中考 会考 外语| 四六级 职称英语 商务英语 公共英语 日语能力 翻译资格 JTEST
资格| 公务员 报关员 银行从业 司法 导游 教师资格 报关 财会| 会计证 经济师 会计职称 注册会计 税务师 资产评估 审计师
工程| 一建 二建 造价师 造价员 咨询师 监理师 安全师 医学| 卫生资格 执业医师 执业药师 执业护士 | 教案 论文 文档
IT类| 计算机等级 计算机软考 职称计算机 高校计算机 推荐-国家公务员 事业单位招聘 军校国防生 自主招生 艺术特长生 招飞
 3773考试网 - 计算机等级考试 - 试题答案 - 正文

全国计算机四级等级考试上机题

来源:招生考试网 2006-10-21

、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:将第1个数与第200个数进行比较, 若两数不等, 则取较大者作为下列统计用的符合条件数,若两数相等, 则不作为符合条件数; 将第2个数与第 199个数进行比较,若两数不等, 则同样取较大者, 若两数相等, 则同样不作为符合条件数; 直至第100个数与第101个数比较为止, 接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到 OUT.DAT文件中。
   注意: 部分源程序存在文件PROG1.C文件中。
   程序中已定义: a[200]、min、max、aver
   请勿改动数据文件IN.DAT中的任何数据、主函数main()、
  读函数readDat()和写函数writeDat()的内容。
  
  */#include 
  #define MAX 200int a[MAX], min, max;double aver ; 
  void jsVal()
  {
   int b[MAX/2], i, n=0;
   for(i = 0; i < MAX/2; i++)
   if(a[i]!=a[MAX-i-1])
   b[n++] = a[i] > a[MAX-i-1] ? a[i] : a[MAX-i-1];
   max=min=b[0]; aver=b[0];
   for(i = 1; i < n; i++)
   { aver+=b[i];
   if(b[i] > max) max=b[i]; else if(b[i] < min) min=b[i];
   }
   aver=aver/n;/**/}void readDat(){
   int i ;
   FILE *fp ;
   fp = fopen("in.dat", "r") ;
   for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
   fclose(fp) ;}void main(){
   readDat() ;
   jsVal() ;
   printf("结果min=%d,max=%d,aver=%6.2lf\n", min, max, aver) ;
   writeDat() ;}writeDat(){
   FILE *fp ;
   fp = fopen("out.dat", "w") ;
   fprintf(fp, "%d\n%d\n%6.2lf\n", min, max, aver) ;
   fclose(fp) ;}



  • 上一个文章:
  • 网站版权与免责声明
    ①由于各方面情况的不断调整与变化,本网所提供的相关信息请以权威部门公布的正式信息为准.
    ②本网转载的文/图等稿件出于非商业性目的,如转载稿涉及版权及个人隐私等问题,请在两周内邮件fjksw@163.com联系.


    | 关于我们 | 联系我们 | 版权申明 | 网站导航 |
    琼ICP备12003406号